/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package ejbs;

import dtos.LinhaVendaDTO;
import entities.LinhaVenda;
import entities.Produto;
import entities.Venda;
import excecoes.EntidadeNaoExistenteException;
import java.util.Date;
import java.util.List;
import javax.ejb.EJB;
import javax.ejb.EJBException;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;

/**
 *
 * @author Rafael
 */
@Stateless
public class LinhaVendaBean {

    @PersistenceContext(name = "Gestao_FarmaciasPU")
    private EntityManager em;
    
    @EJB
    private ProdutoBean produtobean;
    
    @EJB
    private VendaBean vendabean;
    
    
    public void criarLinhaVenda(int vendaId, String nomeProduto, int quantidade) {
        try {
            Venda venda =  em.find(Venda.class, vendaId);
            Produto produto = em.find(Produto.class, nomeProduto);
            LinhaVenda linha = new LinhaVenda(venda, produto, quantidade);
            em.persist(linha);
        } catch (Exception e) {
            throw new EJBException(e.getMessage());
        }
    }
    
    public List<LinhaVendaDTO> getLinhasVendaFromVenda(int vendaId){
        return (List<LinhaVendaDTO>) em.createNamedQuery("getLinhasVenda").setParameter("id", vendaId).getResultList();
    }
    
    public void apagarLinhaVenda(Long id){
        LinhaVenda linha = em.find(LinhaVenda.class, id);
        em.remove(linha);
    }
    
}
